#ifndef GPS_WAYPOINT_H
#define GPS_WAYPOINT_H

#include <QColor>
#include <QGeoCoordinate>
#include <QDateTime>
#include <QTextStream>
#include "gps_dop.h"
#include "modifiable.h"

QTM_USE_NAMESPACE

class GPS_waypoint : public QGeoCoordinate, public Modifiable
{
public:
    GPS_waypoint();

    int id() const;
    QString name() const;
    void setName( const QString& );

    QString description() const;
    void setDescription( const QString& );

    QColor color() const;
    void setColor(const QColor&);

    QString LLtoString() const;
    QString LatToString() const;
    QString LonToString() const;

    QString serialize() const;
    static bool unserialize(QTextStream&, GPS_waypoint* wp);

private:
    GPS_waypoint(const GPS_waypoint&);

    int _id;
    QString _name;
    QString _description;
    QColor _color;
};

#endif // GPS_WAYPOINT_H
